﻿using Might.Infrastructure.DOM;
using Might.Infrastructure.ModelicaDOM.Expressions;

namespace Might.Infrastructure.ModelicaDOM.Equations
{
    /// <summary>
    /// Interface for elseif equation sections of Modelica "if equations"
    /// </summary>
    [ContainedChild(GroupNames.ModelicaThenEquations, typeof(IEquation))]
    public  interface  IElseIfEquation {
        /// <summary>
        /// Condition of the if equation
        /// </summary>
        Expression Condition { get; set; }
    }


    /// <summary>
    /// Interface for Modelica "if equations"
    /// </summary>
    [ContainedChild(GroupNames.ModelicaThenEquations, typeof(IEquation))]
    [ContainedChild(GroupNames.ModelicaElseIfEquations, typeof(IElseIfEquation))]
    [ContainedChild(GroupNames.ModelicaElseEquations, typeof(IEquation))]
    public interface IIfEquation : IEquation { 
  
        /// <summary>
        /// Condition of the if equation
        /// </summary>
        Expression Condition { get; set; }
    }
}
